/*
 * Sphere.h
 *
 *  Created on: 28/03/2013
 *      Author: gonzalo
 */

#ifndef SPHERE_H_
#define SPHERE_H_

#include "Figure.h"

class Sphere: public Figure {
private:

	void create_vertex_buffer(GLfloat radius, GLuint loops, GLuint segmentsPerLoop);
	void create_index_buffer(GLuint loops, GLuint segmentsPerLoop);
	void create_normal_buffer(GLfloat radius);

public:
	Sphere(GLuint program, GLfloat radius, GLuint loops, GLuint segmentsPerLoop);
	virtual ~Sphere();

	virtual void draw(GLuint program, glm::mat4 & world_matrix);
};

#endif /* SPHERE_H_ */
